<?php
namespace modules\system\form;

use idea\saf\sl\Form;

/**
 * Options class file
 * options表单管理类
 * @author 宋欢 <iphper@yeah.net>
 * @version $Id: Options.php 1 2013-05-18 14:58:59Z huan.song $
 * @package modules.system.form
 * @since 1.0
 */
class Options extends Form
{
	/**
	 * @var string 配置文件名
	 */
	const FILE_NAME = 'options.php';
	
	/**
	 * @var array 寄存表的所有字段
	 */
	protected $_attributes = array();
	
	/**
	 * @var array 所有的站点配置
	 */
	public static $data = array (
		1 => array (
			'site_name',
			'site_url',
			'tpl_dir',
			'html_dir',
			'meta_title',
			'meta_keywords',
			'meta_description',
			'powerby',
			'stat_code',
			'sef_rewrite',
		),
		2 => array (
			'reg_status',
			'reg_close_reason',
			'rules_is_show',
			'censor_user',
			'reg_mail_subject',
			'reg_mail_timeout',
			'reg_invite_timeout',
		),
		3 => array (
			'thumb_width',
			'thumb_height',
			'water_mark_status',
			'water_mark_dir',
			'water_mark_text',
			'water_mark_position',
			'water_mark_pct',
		),
		4 => array (
			'smtp_host',
			'smtp_port',
			'smtp_username',
			'smtp_password',
			'from_mail',
		),
		5 => array (
			'list_rows',
			'list_pages',
		),
	);
	
	/**
	 * 获取站点配置的缓存文件路径
	 * @return string
	 */
	public function getFilePath()
	{
		return DIR_DATA_RUNTIME . DS . self::FILE_NAME;
	}

	/**
	 * 判断站点配置缓存文件是否已经存在
	 * @return boolean
	 */
	public function fileExists()
	{
		return is_file($this->getFilePath());
	}

	/**
	 * 删除站点配置缓存文件
	 * @return boolean
	 */
	public function fileDelete()
	{
		if ($this->fileExists()) {
			unlink($this->getFilePath());
		}
		
		return !$this->fileExists();
	}
}
